Examples

Online Itinerary Maintenance

  • As a business traveler I want to reschedule a flight in the future so that I know I can still get home but finish an important business meeting
  • As a business traveler I want to cancel a flight because my schedule changes and if I don’t update it now I might forget and lose money
  • As a traveler’s representative I want to inform a business traveler of a delayed flight to keep them from spending their limited free time at the airport

Monopoly

  • A Player can land on go and receive $200
  • A Player can land on Reading Railroad and purchase it
  • A Player can land on Boardwalk and pay rent

Online Student Store

  • I’m a student who wants to purchase books for my schedule
  • I’m a student who wants to purchase supplemental materials for a course
  • I’m a student who needs to get the cost for the books and materials of a semester’s schedule

INVEST

Independent
  • Avoid dependencies between stories
Negotiable
  • Not contracts, but place holders for conversations
Valuable to users or customers
  • Can be directly tied to something a user or customer (purchaser) wants
Estimatable
  • Can fit into an iteration and be approximately estimated
Small
  • Can be done in a “short” time & its details fit in a conversation
Testable
  • Can describe ways in which we know the story works

Story Guidelines

  • Customer writes them
  • Start with user role goal epics
  • Slice the cake
  • Write closed stories
  • Size relative to time horizon
  • Defer UI as long as possible
  • Common sense, some things are not stories
  • Include roles
  • Write for one user
  • Write in active voice
  • Do not number your cards
  • It's a reminder/placeholder, not the requirements
  • Put constraints on "constraint cards" (first version of quality attributes)

Story Smells

Many of these come of Mike Cohn's work.
  • Stories are too small
  • Interdependent stories
  • Gold-plating
  • Adding too many details to stories
  • Including user interface details too soon (or at all)
  • Thinking too far ahead
  • Splitting too many stories too early
  • Trouble when prioritizing stories
  • Customer won’t write and prioritize stories
  • Too many user acceptance tests